class BookProfile {
    String name
    static constraints = {
        name(maxSize:100,blank:false,
            validator:
           { val, obj ->
                if ( !obj.id ) {
                    return BookProfile.findByNameIlike(val) == null
                } else {
                    def dbObj = BookProfile.findByNameIlike(val)
                    if (dbObj) {
                        return dbObj.id == obj.id
                    }
                }
            })
    }

    String toString() {name}
}
